/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.eclipsecon.dui.swtmodel;


/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>MGrid Data</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#getVerticalAlignment <em>Vertical Alignment</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#getHorizontalAlignment <em>Horizontal Alignment</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#getWidthHint <em>Width Hint</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#getHeightHint <em>Height Hint</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#getHorizontalSpan <em>Horizontal Span</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#getVerticalSpan <em>Vertical Span</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#isGrabExcessHorizontalSpace <em>Grab Excess Horizontal Space</em>}</li>
 *   <li>{@link org.eclipsecon.dui.swtmodel.MGridData#isGrabExcessVerticalSpace <em>Grab Excess Vertical Space</em>}</li>
 * </ul>
 * </p>
 *
 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData()
 * @model
 * @generated
 */
public interface MGridData extends MLayoutData {
	/**
	 * Returns the value of the '<em><b>Vertical Alignment</b></em>' attribute.
	 * The default value is <code>"CENTER"</code>.
	 * The literals are from the enumeration {@link org.eclipsecon.dui.swtmodel.MSWT}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Vertical Alignment</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Vertical Alignment</em>' attribute.
	 * @see org.eclipsecon.dui.swtmodel.MSWT
	 * @see #setVerticalAlignment(MSWT)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_VerticalAlignment()
	 * @model default="CENTER"
	 * @generated
	 */
	MSWT getVerticalAlignment();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#getVerticalAlignment <em>Vertical Alignment</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Vertical Alignment</em>' attribute.
	 * @see org.eclipsecon.dui.swtmodel.MSWT
	 * @see #getVerticalAlignment()
	 * @generated
	 */
	void setVerticalAlignment(MSWT value);

	/**
	 * Returns the value of the '<em><b>Horizontal Alignment</b></em>' attribute.
	 * The default value is <code>"BEGINNING"</code>.
	 * The literals are from the enumeration {@link org.eclipsecon.dui.swtmodel.MSWT}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Horizontal Alignment</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Horizontal Alignment</em>' attribute.
	 * @see org.eclipsecon.dui.swtmodel.MSWT
	 * @see #setHorizontalAlignment(MSWT)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_HorizontalAlignment()
	 * @model default="BEGINNING"
	 * @generated
	 */
	MSWT getHorizontalAlignment();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#getHorizontalAlignment <em>Horizontal Alignment</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Horizontal Alignment</em>' attribute.
	 * @see org.eclipsecon.dui.swtmodel.MSWT
	 * @see #getHorizontalAlignment()
	 * @generated
	 */
	void setHorizontalAlignment(MSWT value);

	/**
	 * Returns the value of the '<em><b>Width Hint</b></em>' attribute.
	 * The default value is <code>"-1"</code>.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Width Hint</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Width Hint</em>' attribute.
	 * @see #setWidthHint(int)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_WidthHint()
	 * @model default="-1"
	 * @generated
	 */
	int getWidthHint();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#getWidthHint <em>Width Hint</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Width Hint</em>' attribute.
	 * @see #getWidthHint()
	 * @generated
	 */
	void setWidthHint(int value);

	/**
	 * Returns the value of the '<em><b>Height Hint</b></em>' attribute.
	 * The default value is <code>"-1"</code>.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Height Hint</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Height Hint</em>' attribute.
	 * @see #setHeightHint(int)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_HeightHint()
	 * @model default="-1"
	 * @generated
	 */
	int getHeightHint();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#getHeightHint <em>Height Hint</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Height Hint</em>' attribute.
	 * @see #getHeightHint()
	 * @generated
	 */
	void setHeightHint(int value);

	/**
	 * Returns the value of the '<em><b>Horizontal Span</b></em>' attribute.
	 * The default value is <code>"1"</code>.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Horizontal Span</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Horizontal Span</em>' attribute.
	 * @see #setHorizontalSpan(int)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_HorizontalSpan()
	 * @model default="1"
	 * @generated
	 */
	int getHorizontalSpan();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#getHorizontalSpan <em>Horizontal Span</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Horizontal Span</em>' attribute.
	 * @see #getHorizontalSpan()
	 * @generated
	 */
	void setHorizontalSpan(int value);

	/**
	 * Returns the value of the '<em><b>Vertical Span</b></em>' attribute.
	 * The default value is <code>"1"</code>.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Vertical Span</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Vertical Span</em>' attribute.
	 * @see #setVerticalSpan(int)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_VerticalSpan()
	 * @model default="1"
	 * @generated
	 */
	int getVerticalSpan();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#getVerticalSpan <em>Vertical Span</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Vertical Span</em>' attribute.
	 * @see #getVerticalSpan()
	 * @generated
	 */
	void setVerticalSpan(int value);

	/**
	 * Returns the value of the '<em><b>Grab Excess Horizontal Space</b></em>' attribute.
	 * The default value is <code>"false"</code>.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Grab Excess Horizontal Space</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Grab Excess Horizontal Space</em>' attribute.
	 * @see #setGrabExcessHorizontalSpace(boolean)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_GrabExcessHorizontalSpace()
	 * @model default="false"
	 * @generated
	 */
	boolean isGrabExcessHorizontalSpace();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#isGrabExcessHorizontalSpace <em>Grab Excess Horizontal Space</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Grab Excess Horizontal Space</em>' attribute.
	 * @see #isGrabExcessHorizontalSpace()
	 * @generated
	 */
	void setGrabExcessHorizontalSpace(boolean value);

	/**
	 * Returns the value of the '<em><b>Grab Excess Vertical Space</b></em>' attribute.
	 * The default value is <code>"false"</code>.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Grab Excess Vertical Space</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Grab Excess Vertical Space</em>' attribute.
	 * @see #setGrabExcessVerticalSpace(boolean)
	 * @see org.eclipsecon.dui.swtmodel.SwtmodelPackage#getMGridData_GrabExcessVerticalSpace()
	 * @model default="false"
	 * @generated
	 */
	boolean isGrabExcessVerticalSpace();

	/**
	 * Sets the value of the '{@link org.eclipsecon.dui.swtmodel.MGridData#isGrabExcessVerticalSpace <em>Grab Excess Vertical Space</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Grab Excess Vertical Space</em>' attribute.
	 * @see #isGrabExcessVerticalSpace()
	 * @generated
	 */
	void setGrabExcessVerticalSpace(boolean value);

} // MGridData
